Zebrafly

[IMG] Zebrafly
Surface analysis by putting a car in a room lined with flourescent tubes - and look at the car. This demo has 4 different vehicles and a much cheaper room than car companies use...


Brief Instructions

Left mouse: rotation.
Middle mouse: Z-axis translation.
Right mouse: X-Y translation.

Press 'r' to reset.  
Press 'm' to enable/disable turntable mode.  

Typing 'm' toggles mouse left button operation between view 
rotation and model rotation (turntable operation).  In turn- 
table mode, the loaded model rotates but the floor or the 
cylinder light source do not.  The model rotation in turntable 
mode is restricted in floor-parallel plane only.  

It is easier to drag horizontally near the upper or the lower 
end of the window for turntable operation.  In turntable mode, 
middle and right buttons work the same way as in the view 
rotation mode.  


Detailed Instructions

Cylinder mapping rotator
------------------------
You can rotate the zebra-mapping cylinder about its own axis 
with '[' and ']' keys.  

[:	Rotate reflection cylinder about its axis
]:	Rotate reflection cylinder about its axis

Fixed view angles can be provided.  You can switch the view 
by pressing each number keys (not ten-keys).  

1:	View-1
2:	View-2
3:	View-3
4:	View-4
5:	View-5
6:	View-6
7:	View-7
8:	View-8
9:	View-9
0:	View-10

Toggling auxiliary geometric objects
------------------------------------
Zebrafly provides three togglable geometry sets, a ruler set, a 
floor and a surrounding cylinder.  These help users understand 
the environment of the loaded model.  Below keys control the 
visibility of these objects.  

a:	Toggle xyz rulers
f:	Toggle floor
k:	Toggle shadow of the model
z:	Toggle reflection cylinder shape

Switches of shading light and cylinder light
--------------------------------------------
Two kinds of light sources affect the appearance of the loaded 
model; shading light and cylindrical reflection texture light.  
The following keys control those light sources.  

t:	Toggle between shading light and cylinder light
T:	Enable both shading light and cylinder light

Texture mapping is simply disabled when 't' toggles for shading 
light.  GL_BLEND is used when 't' toggles for cylinder light.  
'T' always turn on both shading and cylinder light and toggles 
between GL_BLEND and GL_ADD, which makes little difference.  

Note that on Impact GL_BLEND may not work.  Press 'T' a few 
times to enable GL_ADD mode, which actually looks like 
GL_MODULATE on Impact. 


Other Information

@@@@@@@@@@@@@@@@@@@@@@@
@                     @
@   Z e b r a f l y   @
@                     @
@@@@@@@@@@@@@@@@@@@@@@@

-- A cylinder mapping viewer for reflective models --

******************
*  Introduction  *
******************

Zebrafly is an Optimizer application that shows a very 
high quality cylinder reflection mapping for automobile 
or other models with huge amount of tessellated vertices.  

This application is derived from "viewDemo," a standard 
template application for Optimizer.  Most of the features 
available in viewDemo can be used in zebrafly, though 
picking is not supported in zebrafly.  In this README 
file, the features and the usages of viewDemo is basically 
not mentioned.  

*******************************
*  What is added to viewDemo  *
*******************************

Features unique in zebrafly include the following.  

1. Automatic floor generation
2. Shadow of model on the floor
3. Model rotation against reflection cylinder (turntable mode)
4. A shape that represents cylindrical light sources

----
		*   *   *

Thanks to Brian Cabral and Julie Yen for the intensive 
support!

Enjoy.

--
July 1, 1997

Masanori Kakimoto (kaki@nsg.sgi.com)
Makoto Matsumura (matsumura@nsg.sgi.com)

East Asia Technology Network, Tokyo Center
Silicon Graphics Computer Systems

-------

The DKconceptcar was designed using formZ software.
All other models were designed with Alias.

Model name           Designed by
----------           -----------
AUST.csb             MILAI Corporation (http://www.milai.co.jp)
DKconceptcar.csb     DESIGN KOMBINAT Co.,Inc. (http://www.netlaputa.or.jp/~dk-ted)
eggride.csb          Toku Kitajima (toku@wellmet.or.jp)
otemo.csb            Yasuhiro Sugitani (sugitani@tamabi.ac.jp)

All the model files are free to copy and distribute unless they are modified.  

The following table shows ctol tessellation parameters used for each model 
when converting with optimizeDemo.  DKconceptcar was designed as polygons, 
not NURBS.  

filename         -ctol   
------------------------
AUST.csb         0.001  
eggride.csb      0.0001 
otemo.csb        0.0001 

SHADOWS

(0) what does zbFloor do?
  * generate shadow of model
    shadow is done by texture map
    texture is shifting on the fly
    render the model with black color with white clear color
	variables in (1) is used 

             Camera   
             / \    (jitterd camera)
            /   \   
           / fov \
          /       \
         /         \
        /           \
       /             \
             **
            *****
	   ********
	    **  **

	===============

    fov is also used to jittering the camera

  * calculate bounding box and generate floor geometry
    3 variables in (2) are used to generate 
    geometry.
  
(1) environment variables

  setenv ZB_FLOOR_SHADOWTEX_SIZE 128
  128x128 texture is used for shadow texture

  setenv ZB_FLOOR_FOV 15
  15(degree) is used for fov

  setenv ZB_FLOOR_JITTER_MODE 1
  1 = jitter mode    : camera will be jittered with fov angle
		       rendered 5 times and accumulated in host memory.
  0 = non jitter mode: once rendered and used as shadow texture 

(2) zebrafly commandline option

        -floorOffset 0.5 
		offset of the model and the floor
        -floorSize   1.5 
		scale of the floor
        -floorDirection 1
		specify up dir of the floor
		(0|1|2)<-> (x|y|z) axis is up respectively 


!!! Caution !!!

  Pre rendering for shadow image generation is done in the window.
  (not offscreen). Changing window size, position will cause incorrect
  shadow image.
  Would you please leave it as it is for a while.


System Requirements

Reality graphics w/ 64M texture memory. Needs 256M.

HighEnd_Demos@sgi.com